Блог им. AlexanderTomtosov |Дорого значит ликвидно? Сравнительный анализ акций России и США (+ код на Python)

Цель исследования  — показать связь между капитализацией и ликвидностью на российском рынке через пересечение позиций в портфелях. Распространенная точка зрения, что рыночная капитализация хорошо отражает ликвидность. Например, в индексе ММВБ-Мосбиржи больший вес дается более дорогим компаниям. Этот пост является дополнением к исследованиям по факторным премиям, опубликованным ранее на SL: https://smart-lab.ru/blog/791938.php

В этой статье также будем проверять гипотезы через построение портфелей, но технические детали вынесены в блокнот с кодом в формате .ipynb. Состоит из кодовых блоков и комментариев. По нему можно полностью реплицировать исследование на своих данных. Выглядит так:
Дорого значит ликвидно? Сравнительный анализ акций России и США (+ код на Python)

Ссылку размещу в конце текста.

 

Основные результаты

 

  • В США 25% самых дорогих компаний почти полностью отражают ликвидность. Позиции в портфеле самых дорогих компаний совпадают с 25% наиболее активно торгуемыми бумагами на 90%. В России пересечение аналогичных портфелей всего 73%, т.е. у четверти бумаг есть рассинхронизация в ликвидность-стоимость. В отдельные периоды значение доходило до 50%.



( Читать дальше )

Блог им. AlexanderTomtosov |Есть ли премии за риск при покупке трендовых, "недооцененных" и малых компаний на Мосбирже? Много бэктестов

Более года назад в блоге на смартлабе публиковал разрозненные исследования по факторам Momentum, Size и Value. Сейчас решил собрать их в единый кулак в этом посте + обновить методику и данные.

Цель — системно проверить простые идеи инвестирования в акции: можно ли получить прибыль выше индекса если регулярно покупать n% акций с наибольшей целевой характеристикой из всего множества доступных бумаг на каждый период?

Основные результаты:

  • В целом, портфели из 25% наиболее трендовых, недооцененных (по мультипликатору P/E) и малых компаний обгоняют рыночные индексы на горизонте 20 лет;
  • Некоторые портфели имеют значимую положительную альфу — доходность с поправкой на риск по отношению к индексу;
  • Факторы слабо и даже отрицательно коррелируют между собой и с рынком. Это значит, что в разные периоды, как группа, были сильнее акции с определенным свойством: с низкой капитализацией, с относительной недооценкой или находящиеся в сильном растущем тренде.
Серьезные науки стараются не отвечать на частные случаи вроде «Почему мой прадед прожил до 90 лет если курил с 14 лет?». Они проводят клинические исследования, используют контрольные группы и ищут системные взаимосвязи. Также финансовые экономисты не стремятся объяснить почему акции Сбера так сильно выросли, а выделяют ключевое свойство присущее этой и другим акциям. Затем нарезают все доступные акции по данному свойству на каждый период и считают статистические метрики. Что-то подобное постараюсь сделать в этом мини-исследовании :)

( Читать дальше )

Блог им. AlexanderTomtosov |Прохладный пост о системной торговле. Тестируем торговые идеи на Python бесплатно и без зауми с библиотекой PQR.

Привет, почти 2 месяца назад мы запустили первую версию нашей библиотеки PQR для тестирования инвестиционных идей. Основная суть: системно проверять аномалии на большой группе акций. Например, вы ведете таблицы с мультипликаторами компаний и биржевых котировок. Цель — покупать 10% недооцененных бумаг с наименьшим значение P/E и ребалансировать портфель раз в месяц.

Прохладный пост о системной торговле. Тестируем торговые идеи на Python бесплатно и без зауми с библиотекой PQR.


Разделов для улучшения было так много, что Андрей (github.com/eura17) почти полностью переписал все функции. Основные изменения:

1) Переход к объектно-ориентированному программированию. Код легче читается и занимает меньше места.

2) Добавили функцию correct_matrices — она приравнивает матрицы с исходными данными к одному виду. Сортирует и удаляет отсутствующие в остальных матрицах столбцы (акции) и строки (периоды);

3) Появилась документация на readthedocs: pqr.readthedocs.io/en/latest/index.html

4) Возможность перебора параметров стратегии через grid_search. Быстрый вывод таблицы с результатами или отдельного параметра (например, Шарп) для стратегий с разными периодами наблюдения, удержания и лагом;



( Читать дальше )

Блог им. AlexanderTomtosov |Системно тестируем аномалии на Python. Релиз библиотеки Portfolio Quantitive Research (PQR)

Привет! Сегодня не про результаты, а про методы. Закончил писать базовый функционал библиотеки для количественных исследований. Вот что из него можно выжать:

  • Моделирование портфелей по кросс-секции и временным рядам;
  • Квантильная методика формирования портфелей в % от выборки или фиксированное число инструментов;
  • Возможность гибко задавать веса в портфеле по дополнительному фактору (почти smart beta);
  • Можно вырывать данные для аналитики на каждом промежуточном этапе: сделки, размер позиций, комиссии, доходность портфелей;
  • Возможность относительно точно учесть комиссионные расходы;
  • Пока самая простая визуализация и метрики.

Как выглядит итоговая отрисовка:
Системно тестируем аномалии на Python. Релиз библиотеки Portfolio Quantitive Research (PQR)

Небольшая предыстория или зачем писать свой тестер

 

Не являясь базовым программистом, я пользовался готовыми решениями для бэктестов и особенно долго засиживался на платформе Quantopian. В прошлом году компания не получила нового транша от инвесторов и объявила о закрытии. Вместе с ней сгинул и весь написанный код, а знания синтаксиса несуществующей платформы близки по полезности к 1С-программированию при переезде в долину.
Поработав с другими сервисами, понял, что их существенные недостатки можно разделить на 3 группы:



( Читать дальше )

....все тэги
UPDONW
Новый дизайн